home *** CD-ROM | disk | FTP | other *** search
Modula Implementation | 1993-11-04 | 22.2 KB | 607 lines |
- (***********************************************************************
-
- :Program. PlotZeichnen2.mod
- :Author. Stefan Köhle
- :Address. Erhardtstr. 10
- W-7033 Herrenberg
- :Phone. 07032/5146
- :shortcut.
- :Version. 1.0
- :Date. 15.11.92
- :Copyright. nix
- :Language. Modula-II.
- :Translator. M2Amiga 4.107d
- :Imports. PlotInit,MyMathlib
- :UpDate.
- :Contents.
- :Remark.
-
- **********************************************************************)
-
- IMPLEMENTATION MODULE PlotZeichnen2;
-
-
- FROM MyMathLib IMPORT FFPToInt ;
- FROM PlotInit IMPORT PlotBasePtr ;
-
- FROM SYSTEM IMPORT ADR ;
- FROM GraphicsL IMPORT AreaMove,AreaDraw,AreaEnd,Text,
- SetAPen,SetDrMd,Move,Draw ;
- FROM GraphicsD IMPORT jam1;
- FROM String IMPORT Length ;
- FROM GfxMacros IMPORT SetDrPt ;
-
-
-
- PROCEDURE KastenZeichnen(VAR Pb: PlotBasePtr) ; (***************************)
-
- BEGIN
-
- SetAPen(Pb^.Rp,1) ;
- SetDrMd(Pb^.Rp,jam1) ;
-
- IF Pb^.GrosseBitmap THEN
-
- Move(Pb^.Rp,Pb^.KastenX0,Pb^.KastenY0) ; (* P1 *)
- Draw(Pb^.Rp,Pb^.KastenX0,Pb^.KastenY0+720) ; (* P2 *)
- Draw(Pb^.Rp,Pb^.KastenX0-432,Pb^.KastenY0+1152); (* P3 *)
- Draw(Pb^.Rp,Pb^.KastenX0-432,Pb^.KastenY0+432) ; (* P4 *)
- Draw(Pb^.Rp,Pb^.KastenX0,Pb^.KastenY0) ; (* P1 *)
- Draw(Pb^.Rp,Pb^.KastenX0+1152,Pb^.KastenY0) ; (* P5 *)
- Draw(Pb^.Rp,Pb^.KastenX0+1152,Pb^.KastenY0+720); (* P6 *)
- Draw(Pb^.Rp,Pb^.KastenX0,Pb^.KastenY0+720) ; (* P2 *)
- Move(Pb^.Rp,Pb^.KastenX0-432,Pb^.KastenY0+1152); (* P3 *)
- Draw(Pb^.Rp,Pb^.KastenX0+720,Pb^.KastenY0+1152); (* P7 *)
- Draw(Pb^.Rp,Pb^.KastenX0+1152,Pb^.KastenY0+720); (* P6 *)
-
- ELSE
-
- Move(Pb^.Rp,Pb^.KastenX0,Pb^.KastenY0) ; (* P1 *)
- Draw(Pb^.Rp,Pb^.KastenX0,Pb^.KastenY0+240) ; (* P2 *)
- Draw(Pb^.Rp,Pb^.KastenX0-144,Pb^.KastenY0+384) ; (* P3 *)
- Draw(Pb^.Rp,Pb^.KastenX0-144,Pb^.KastenY0+144) ; (* P4 *)
- Draw(Pb^.Rp,Pb^.KastenX0,Pb^.KastenY0) ; (* P1 *)
- Draw(Pb^.Rp,Pb^.KastenX0+384,Pb^.KastenY0) ; (* P5 *)
- Draw(Pb^.Rp,Pb^.KastenX0+384,Pb^.KastenY0+240) ; (* P6 *)
- Draw(Pb^.Rp,Pb^.KastenX0,Pb^.KastenY0+240) ; (* P2 *)
- Move(Pb^.Rp,Pb^.KastenX0-144,Pb^.KastenY0+384); (* P3 *)
- Draw(Pb^.Rp,Pb^.KastenX0+240,Pb^.KastenY0+384) ; (* P7 *)
- Draw(Pb^.Rp,Pb^.KastenX0+384,Pb^.KastenY0+240) ; (* P6 *)
-
- END (* IF *) ;
-
- END KastenZeichnen ;
-
-
-
- PROCEDURE XAchseZeichnen(VAR Pb: PlotBasePtr) ; (************************)
-
- VAR P1x,P1y,P2x: INTEGER ;
-
- BEGIN
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- IF Pb^.GrosseBitmap THEN
-
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- Pb^.A.XNull := -3*(FFPToInt(Pb^.B.XLinks*96.0/Pb^.B.DeltaX));
- IF Pb^.A.XNull < 0 THEN Pb^.A.XNull := 0 ; END ;
- IF Pb^.A.XNull > 1152 THEN Pb^.A.XNull := 1152 ; END ;
-
- Pb^.A.YNull := -3*FFPToInt(Pb^.B.YHinten*48.0/Pb^.B.DeltaY) ;
- IF Pb^.A.YNull < 0 THEN Pb^.A.YNull := 0 ; END ;
- IF Pb^.A.YNull > 432 THEN Pb^.A.YNull := 432 ; END ;
-
- Pb^.A.ZNull := 3*FFPToInt(Pb^.B.ZOben/Pb^.B.DeltaZ *60.0) ;
- IF Pb^.A.ZNull < 0 THEN Pb^.A.ZNull := 0 ; END ;
- IF Pb^.A.ZNull > 720 THEN Pb^.A.ZNull := 720 ; END ;
-
- P1x :=Pb^.KastenX0-Pb^.A.YNull ;
- P1y :=Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull ;
- P2x :=Pb^.KastenX0+1152-Pb^.A.YNull ;
-
- Move(Pb^.Rp,P1x+1,P1y-1) ;
- Draw(Pb^.Rp,P2x-1,P1y-1) ;
- Move(Pb^.Rp,P1x+1,P1y+1) ;
- Draw(Pb^.Rp,P2x-1,P1y+1) ;
-
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- Move(Pb^.Rp,P1x,P1y) ;
- Draw(Pb^.Rp,P2x,P1y) ;
-
-
- ELSE
-
- Pb^.A.XNull := -(FFPToInt(Pb^.B.XLinks*96.0/Pb^.B.DeltaX));
- IF Pb^.A.XNull < 0 THEN Pb^.A.XNull := 0 ; END ;
- IF Pb^.A.XNull > 384 THEN Pb^.A.XNull := 384 ; END ;
-
- Pb^.A.YNull := -FFPToInt(Pb^.B.YHinten*48.0/Pb^.B.DeltaY) ;
- IF Pb^.A.YNull < 0 THEN Pb^.A.YNull := 0 ; END ;
- IF Pb^.A.YNull > 144 THEN Pb^.A.YNull := 144 ; END ;
-
- Pb^.A.ZNull := FFPToInt(Pb^.B.ZOben/Pb^.B.DeltaZ *60.0) ;
- IF Pb^.A.ZNull < 0 THEN Pb^.A.ZNull := 0 ; END ;
- IF Pb^.A.ZNull > 240 THEN Pb^.A.ZNull := 240 ; END ;
-
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
-
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+1, (* X-Achse *)
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull+1) ;
- Draw(Pb^.Rp,Pb^.KastenX0+384-Pb^.A.YNull-1,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull+1) ;
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+1,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull-1) ;
- Draw(Pb^.Rp,Pb^.KastenX0+384-Pb^.A.YNull-1,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull-1) ;
-
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0+384-Pb^.A.YNull,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull) ;
-
-
- END (* IF *) ;
-
- END XAchseZeichnen ;
-
-
-
- PROCEDURE YAchseZeichnen(VAR Pb: PlotBasePtr) ; (************************)
-
- BEGIN
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- IF Pb^.GrosseBitmap THEN
-
- Move(Pb^.Rp,Pb^.KastenX0+Pb^.A.XNull,
- Pb^.KastenY0+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-432+Pb^.A.XNull,
- Pb^.KastenY0+432+Pb^.A.ZNull) ;
-
- ELSE
-
- Move(Pb^.Rp,Pb^.KastenX0+Pb^.A.XNull,
- Pb^.KastenY0+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-144+Pb^.A.XNull,
- Pb^.KastenY0+144+Pb^.A.ZNull) ;
-
- END (* IF *) ;
-
- END YAchseZeichnen;
-
-
-
- PROCEDURE ZAchseZeichnen(VAR Pb: PlotBasePtr) ; (************************)
-
- VAR P1x,P1y: INTEGER ;
- OK : BOOLEAN ;
- str : ARRAY[0..10] OF CHAR ;
-
- BEGIN
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- IF Pb^.GrosseBitmap THEN
-
- P1x := Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull ; (* Spitze des Pfeils*)
- P1y := Pb^.KastenY0+Pb^.A.YNull-38 ;
-
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- Move(Pb^.Rp,P1x-1,P1y+758) ;
- Draw(Pb^.Rp,P1x-1,P1y) ;
- Move(Pb^.Rp,P1x-2,P1y+758) ;
- Draw(Pb^.Rp,P1x-2,P1y) ;
-
- Move(Pb^.Rp,P1x+1,P1y+758) ;
- Draw(Pb^.Rp,P1x+1,P1y) ;
- Move(Pb^.Rp,P1x+2,P1y+758) ;
- Draw(Pb^.Rp,P1x+2,P1y) ;
- (* Kasten um Pfeil *)
- OK := AreaMove(Pb^.Rp,P1x-7,P1y+7) ; (* links unten *)
- OK := AreaDraw(Pb^.Rp,P1x-7,P1y-3) ; (* links oben *)
- OK := AreaDraw(Pb^.Rp,P1x+7,P1y-3) ; (* rechts oben *)
- OK := AreaDraw(Pb^.Rp,P1x+7,P1y+7) ; (* rechts unten *)
- OK := AreaEnd(Pb^.Rp) ;
-
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- Move(Pb^.Rp,P1x,P1y+758) ; (* Pfeil *)
- Draw(Pb^.Rp,P1x,P1y) ;
- Move(Pb^.Rp,P1x-4,P1y+4) ;
- Draw(Pb^.Rp,P1x,P1y) ;
- Draw(Pb^.Rp,P1x+4,P1y+4) ;
-
- IF Pb^.Beschriftung THEN
-
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- (* Kasten um Z *)
- OK := AreaMove(Pb^.Rp,P1x+7,P1y+14) ; (* links unten *)
- OK := AreaDraw(Pb^.Rp,P1x+7,P1y) ; (* links oben *)
- OK := AreaDraw(Pb^.Rp,P1x+20,P1y) ; (* rechts oben *)
- OK := AreaDraw(Pb^.Rp,P1x+20,P1y+14) ; (* rechts unten *)
- OK := AreaEnd(Pb^.Rp) ;
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- str := 'Z' ;
- Move(Pb^.Rp,P1x+10,P1y+10) ;
- Text(Pb^.Rp,ADR(str),Length(str)) ;
- END ; (* IF Beschr *)
-
- ELSE
-
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- (* Z-Achse *)
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull-1,
- Pb^.KastenY0+239+Pb^.A.YNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull-1,
- Pb^.KastenY0-16+Pb^.A.YNull) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull-2,
- Pb^.KastenY0+239+Pb^.A.YNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull-2,
- Pb^.KastenY0-16+Pb^.A.YNull) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull+1,
- Pb^.KastenY0+239+Pb^.A.YNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull+1,
- Pb^.KastenY0-16+Pb^.A.YNull) ;
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull+2,
- Pb^.KastenY0+239+Pb^.A.YNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull+2,
- Pb^.KastenY0-16+Pb^.A.YNull) ;
-
- (* Kasten um Pfeil *)
-
- OK := AreaMove(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull-4,
- Pb^.KastenY0-16+Pb^.A.YNull+4) ; (*links unten*)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull-4,
- Pb^.KastenY0-16+Pb^.A.YNull-4) ; (*links oben *)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull+4,
- Pb^.KastenY0-16+Pb^.A.YNull-4) ; (*rechts oben*)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull+4,
- Pb^.KastenY0-16+Pb^.A.YNull+4) ; (*rechts unten*)
- OK := AreaEnd(Pb^.Rp) ;
-
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull,
- Pb^.KastenY0+239+Pb^.A.YNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull,
- Pb^.KastenY0-18+Pb^.A.YNull) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull-3, (* Pfeil *)
- Pb^.KastenY0-18+Pb^.A.YNull+3) ;
- Draw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull,
- Pb^.KastenY0-18+Pb^.A.YNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-Pb^.A.YNull+Pb^.A.XNull+3,
- Pb^.KastenY0-18+Pb^.A.YNull+3) ;
-
- IF Pb^.Beschriftung THEN
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
- (* unten links*)
- OK := AreaMove(Pb^.Rp,Pb^.KastenX0+8-Pb^.A.YNull+Pb^.A.XNull-3,
- Pb^.KastenY0-11+Pb^.A.YNull+3) ;
- (*unten rechts *)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+8-Pb^.A.YNull+Pb^.A.XNull+9,
- Pb^.KastenY0-11+Pb^.A.YNull+3) ;
- (*oben rechts*)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+8-Pb^.A.YNull+Pb^.A.XNull+9,
- Pb^.KastenY0-11+Pb^.A.YNull-9) ;
- (*oben links *)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+8-Pb^.A.YNull+Pb^.A.XNull-3,
- Pb^.KastenY0-11+Pb^.A.YNull-9) ;
- OK := AreaEnd(Pb^.Rp) ;
-
- SetAPen(Pb^.Rp,1) ;
- str := 'Z' ;
- Move(Pb^.Rp,Pb^.KastenX0+8-Pb^.A.YNull+Pb^.A.XNull,
- Pb^.KastenY0-11+Pb^.A.YNull) ;
- Text(Pb^.Rp,ADR(str),Length(str)) ;
- END (* IF Beschriftung *) ;
- END (* IF *) ;
-
- END ZAchseZeichnen;
-
-
-
- PROCEDURE RestXAchseZeichnen(VAR Pb: PlotBasePtr) ; (*********************)
-
- VAR P1x,P1y,P2x,P2y,P3x,P3y: INTEGER ;
- OK : BOOLEAN ;
- str : ARRAY[0..10] OF CHAR ;
-
- BEGIN
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- IF Pb^.GrosseBitmap THEN
-
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- P1x := Pb^.KastenX0+1152-Pb^.A.YNull ;
- P1y := Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull ;
- P2x := Pb^.KastenX0+1152+33-Pb^.A.YNull ;
-
- Move(Pb^.Rp,P1x+1,P1y+1) ;
- Draw(Pb^.Rp,P2x,P1y+1) ;
- Move(Pb^.Rp,P1x+1,P1y-1) ;
- Draw(Pb^.Rp,P2x,P1y-1) ;
-
- P1x :=Pb^.KastenX0+1152+18-Pb^.A.YNull+15 ;
- P1y :=Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull ;
- (* Kasten um Pfeil *)
- OK := AreaMove(Pb^.Rp,P1x-9,P1y-7) ; (* oben links *)
- OK := AreaDraw(Pb^.Rp,P1x+2,P1y-7) ; (* oben rechts*)
- OK := AreaDraw(Pb^.Rp,P1x+2,P1y+7) ; (* unten rechts*)
- OK := AreaDraw(Pb^.Rp,P1x-9,P1y+7) ; (* unten links*)
- OK := AreaEnd(Pb^.Rp) ;
-
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- Move(Pb^.Rp,P1x-32,P1y) ;
- Draw(Pb^.Rp,P1x,P1y) ;
-
- Move(Pb^.Rp,P1x-5,P1y-5) ; (* Pfeil *)
- Draw(Pb^.Rp,P1x,P1y) ;
- Draw(Pb^.Rp,P1x-5,P1y+5) ;
-
-
- IF Pb^.Beschriftung THEN
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- OK := AreaMove(Pb^.Rp,P1x-13,P1y+21) ; (* unten links *)
- OK := AreaDraw(Pb^.Rp,P1x,P1y+21) ; (* unten rechts *)
- OK := AreaDraw(Pb^.Rp,P1x,P1y+8) ; (* oben rechts *)
- OK := AreaDraw(Pb^.Rp,P1x-13,P1y+8) ; (* oben links *)
- OK := AreaEnd(Pb^.Rp) ;
-
- SetAPen(Pb^.Rp,1) ;
-
- str := 'X' ;
- Move(Pb^.Rp,P1x-10,P1y+18) ;
- Text(Pb^.Rp,ADR(str),Length(str)) ;
- END (* IF Beschriftung *) ;
-
-
- ELSE
-
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- Move(Pb^.Rp,Pb^.KastenX0+384-Pb^.A.YNull+1,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull+1) ;
- Draw(Pb^.Rp,Pb^.KastenX0+403-Pb^.A.YNull,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull+1) ;
- Move(Pb^.Rp,Pb^.KastenX0+384-Pb^.A.YNull+1,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull-1) ;
- Draw(Pb^.Rp,Pb^.KastenX0+403-Pb^.A.YNull,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull-1) ;
-
- (* Kasten um Pfeil *)
- OK := AreaMove(Pb^.Rp,Pb^.KastenX0+401-Pb^.A.YNull-2, (* oben links *)
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull-4) ;
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+404-Pb^.A.YNull+2, (* oben rechts*)
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull-4) ;
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+404-Pb^.A.YNull+2, (* unten rechts*)
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull+4) ;
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+401-Pb^.A.YNull-2, (* unten links*)
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull+4) ;
- OK := AreaEnd(Pb^.Rp) ;
-
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- Move(Pb^.Rp,Pb^.KastenX0+384-Pb^.A.YNull,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0+404-Pb^.A.YNull,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull) ;
-
- Move(Pb^.Rp,Pb^.KastenX0+401-Pb^.A.YNull, (* Pfeil *)
- Pb^.KastenY0-2+Pb^.A.YNull+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0+404-Pb^.A.YNull,
- Pb^.KastenY0+Pb^.A.YNull+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0+401-Pb^.A.YNull,
- Pb^.KastenY0+2+Pb^.A.YNull+Pb^.A.ZNull) ;
-
- IF Pb^.Beschriftung THEN
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- (* unten links*)
- OK := AreaMove(Pb^.Rp,Pb^.KastenX0+397-Pb^.A.YNull-3,
- Pb^.KastenY0+12+Pb^.A.YNull+Pb^.A.ZNull+3) ;
- (*unten rechts *)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+397-Pb^.A.YNull+9,
- Pb^.KastenY0+12+Pb^.A.YNull+Pb^.A.ZNull+3) ;
- (*oben rechts*)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+397-Pb^.A.YNull+9,
- Pb^.KastenY0+12+Pb^.A.YNull+Pb^.A.ZNull-9) ;
- (*oben links *)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0+397-Pb^.A.YNull-3,
- Pb^.KastenY0+12+Pb^.A.YNull+Pb^.A.ZNull-9) ;
- OK := AreaEnd(Pb^.Rp) ;
-
- SetAPen(Pb^.Rp,1) ;
-
- str := 'X' ;
- Move(Pb^.Rp,Pb^.KastenX0+397-Pb^.A.YNull,
- Pb^.KastenY0+12+Pb^.A.YNull+Pb^.A.ZNull) ;
- Text(Pb^.Rp,ADR(str),Length(str)) ;
- END (* IF Beschriftung *) ;
- END (* IF Grosse BitMap *) ;
-
- END RestXAchseZeichnen;
-
-
-
- PROCEDURE RestYAchseZeichnen(VAR Pb: PlotBasePtr) ; (*********************)
-
- VAR P1x,P1y,P2x,P2y : INTEGER ;
- OK : BOOLEAN ;
- str : ARRAY[0..10] OF CHAR ;
-
- BEGIN
-
- IF Pb^.GrosseBitmap THEN
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- P1x := Pb^.KastenX0-432+Pb^.A.XNull-15 ; (* Pfeilspitze *)
- P1y := Pb^.KastenY0+432+Pb^.A.ZNull+15 ;
-
- Move(Pb^.Rp,Pb^.KastenX0-432+Pb^.A.XNull-1,
- Pb^.KastenY0+432+Pb^.A.ZNull+1) ;
- Draw(Pb^.Rp,P1x-1,P1y+1) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-432+Pb^.A.XNull-1,
- Pb^.KastenY0+432+Pb^.A.ZNull+2) ;
- Draw(Pb^.Rp,P1x-1,P1y+2) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-432+Pb^.A.XNull-2,
- Pb^.KastenY0+432+Pb^.A.ZNull+1) ;
- Draw(Pb^.Rp,P1x-2,P1y+1) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-432+Pb^.A.XNull-3,
- Pb^.KastenY0+432+Pb^.A.ZNull+1) ;
- Draw(Pb^.Rp,P1x-3,P1y+1) ;
-
-
- (* Kasten um Pfeil *)
-
- OK := AreaMove(Pb^.Rp,P1x-4,P1y-4) ; (* links oben *)
- OK := AreaDraw(Pb^.Rp,P1x+10,P1y-4) ; (* rechts oben *)
- OK := AreaDraw(Pb^.Rp,P1x+10,P1y+2) ; (* rechts unten *)
- OK := AreaDraw(Pb^.Rp,P1x-4,P1y+2) ; (* links unten *)
- OK := AreaEnd(Pb^.Rp) ;
-
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- Move(Pb^.Rp,Pb^.KastenX0+Pb^.A.XNull-432,
- Pb^.KastenY0+Pb^.A.ZNull+432) ;
- Draw(Pb^.Rp,P1x,P1y) ;
- (* Pfeil *)
- Move(Pb^.Rp,P1x-2,P1y-2) ;
- Draw(Pb^.Rp,P1x,P1y) ;
- Draw(Pb^.Rp,P1x+8,P1y-2) ;
-
- IF Pb^.Beschriftung THEN
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- (* Kasten ums Y *)
- OK := AreaMove(Pb^.Rp,P1x-3,P1y+16) ; (* unten links *)
- OK := AreaDraw(Pb^.Rp,P1x+10,P1y+16) ; (* unten rechts *)
- OK := AreaDraw(Pb^.Rp,P1x+10,P1y+4) ; (* oben rechts *)
- OK := AreaDraw(Pb^.Rp,P1x-3,P1y+4) ; (* oben links *)
- OK := AreaEnd(Pb^.Rp) ;
-
- SetAPen(Pb^.Rp,1) ;
-
- str := 'Y' ;
- Move(Pb^.Rp,P1x,P1y+13) ;
- Text(Pb^.Rp,ADR(str),Length(str)) ;
- END (* IF Beschriftung *) ;
-
- ELSE
-
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- Move(Pb^.Rp,Pb^.KastenX0-144+Pb^.A.XNull-1,
- Pb^.KastenY0+144+Pb^.A.ZNull+1) ;
- Draw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull-1,
- Pb^.KastenY0+152+Pb^.A.ZNull+1) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-144+Pb^.A.XNull-1,
- Pb^.KastenY0+144+Pb^.A.ZNull+2) ;
- Draw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull-1,
- Pb^.KastenY0+152+Pb^.A.ZNull+2) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-144+Pb^.A.XNull-2,
- Pb^.KastenY0+144+Pb^.A.ZNull+1) ;
- Draw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull-2,
- Pb^.KastenY0+152+Pb^.A.ZNull+1) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-144+Pb^.A.XNull-3,
- Pb^.KastenY0+144+Pb^.A.ZNull+1) ;
- Draw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull-3,
- Pb^.KastenY0+152+Pb^.A.ZNull+1) ;
-
-
- (* Kasten um Pfeil *)
-
- OK := AreaMove(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull-3, (* links oben *)
- Pb^.KastenY0+152+Pb^.A.ZNull-3) ;
-
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull+6, (* rechts oben *)
- Pb^.KastenY0+152+Pb^.A.ZNull-3) ;
-
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull+6, (* rechts unten *)
- Pb^.KastenY0+152+Pb^.A.ZNull+2) ;
-
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull-3, (* links unten *)
- Pb^.KastenY0+152+Pb^.A.ZNull+2) ;
-
- OK := AreaEnd(Pb^.Rp) ;
-
-
- SetAPen(Pb^.Rp,1) ; (* Vordergrundfarbe *)
-
- Move(Pb^.Rp,Pb^.KastenX0-144+Pb^.A.XNull,
- Pb^.KastenY0+144+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull,
- Pb^.KastenY0+152+Pb^.A.ZNull) ;
-
- Move(Pb^.Rp,Pb^.KastenX0-152-1+Pb^.A.XNull, (* Pfeil *)
- Pb^.KastenY0+152-1+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-152+Pb^.A.XNull,
- Pb^.KastenY0+152+Pb^.A.ZNull) ;
- Draw(Pb^.Rp,Pb^.KastenX0-152+4+Pb^.A.XNull,
- Pb^.KastenY0-1+152+Pb^.A.ZNull) ;
-
- IF Pb^.Beschriftung THEN
- SetAPen(Pb^.Rp,0) ; (* Hintergrundfarbe *)
-
- (* Kasten ums Y *)
- OK := AreaMove(Pb^.Rp,Pb^.KastenX0-153+Pb^.A.XNull-3, (* unten links*)
- Pb^.KastenY0+164+Pb^.A.ZNull+3) ;
- (*unten rechts *)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-153+Pb^.A.XNull+9,
- Pb^.KastenY0+164+Pb^.A.ZNull+3) ;
- (*oben rechts*)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-153+Pb^.A.XNull+9,
- Pb^.KastenY0+164+Pb^.A.ZNull-9) ;
- (*oben links *)
- OK := AreaDraw(Pb^.Rp,Pb^.KastenX0-153+Pb^.A.XNull-3,
- Pb^.KastenY0+164+Pb^.A.ZNull-9) ;
- OK := AreaEnd(Pb^.Rp) ;
-
- SetAPen(Pb^.Rp,1) ;
-
- str := 'Y' ;
- Move(Pb^.Rp,Pb^.KastenX0-153+Pb^.A.XNull,
- Pb^.KastenY0+164+Pb^.A.ZNull) ;
- Text(Pb^.Rp,ADR(str),Length(str)) ;
- END (* IF Beschriftung *) ;
- END (* IF GrosseBitmap *)
-
- END RestYAchseZeichnen;
-
-
-
- END PlotZeichnen2.
-
-
-